home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2000 #4 / Amiga Plus CD - 2000 - No. 4.iso / Tools / Commo-Support / Disk-Archive / includes-1_4.dms / includes-1_4.adf / doc.zoo / disk.doc < prev    next >
Encoding:
Text File  |  1989-12-20  |  3.7 KB  |  165 lines

  1.  
  2.  
  3. TABLE OF CONTENTS
  4.  
  5. disk.resource/AllocUnit
  6. disk.resource/FreeUnit
  7. disk.resource/GetUnit
  8. disk.resource/GetUnitID
  9. disk.resource/GiveUnit
  10.  
  11.  
  12. disk.resource/AllocUnit                                 disk.resource/AllocUnit
  13.  
  14.    NAME
  15.        AllocUnit - allocate a unit of the disk
  16.  
  17.    SYNOPSIS
  18.        Success = AllocUnit( unitNum ), DRResource
  19.     D0                      D0         A6
  20.  
  21.    FUNCTION
  22.     This routine allocates one of the units of the disk.  It should
  23.     be called before trying to use the disk (via GetUnit).
  24.  
  25.    INPUTS
  26.     unitNum -- a legal unit number (zero through three)
  27.  
  28.    RESULTS
  29.     Success -- nonzero if successful.  zero on failure.
  30.  
  31.    EXCEPTIONS
  32.  
  33.    SEE ALSO
  34.  
  35.    BUGS
  36.  
  37.  
  38. disk.resource/FreeUnit                                   disk.resource/FreeUnit
  39.  
  40.    NAME
  41.        FreeUnit - deallocate the disk
  42.  
  43.    SYNOPSIS
  44.        FreeUnit( unitNum ), DRResource
  45.           D0         A6
  46.  
  47.    FUNCTION
  48.     This routine deallocates one of the units of the disk.  It should
  49.     be called when done with the disk.  Do not call it if you did
  50.     no successfully allocate the disk (there is no protection -- you
  51.     will probably crash the disk system).
  52.  
  53.    INPUTS
  54.     unitNum -- a legal unit number (zero through three)
  55.  
  56.    RESULTS
  57.  
  58.    EXCEPTIONS
  59.  
  60.    SEE ALSO
  61.  
  62.    BUGS
  63.  
  64.  
  65. disk.resource/GetUnit                                     disk.resource/GetUnit
  66.  
  67.    NAME
  68.        GetUnit - allocate the disk for a driver
  69.  
  70.    SYNOPSIS
  71.        lastDriver = GetUnit( unitPointer ), DRResource
  72.        D0              A1             A6
  73.  
  74.    FUNCTION
  75.     This routine allocates the disk to a driver.  It is either
  76.     immediately available, or the request is saved until the disk
  77.     is available.  When it is available, your unitPointer is
  78.     sent back to you (via ReplyMsg).  You may then reattempt the
  79.     GetUnit.
  80.     
  81.     Allocating the disk allows you to use the disk's resources.
  82.     Remember however that there are four units to the disk; you are
  83.     only one of them.  Please be polite to the other units (by never
  84.     selecting them, and by not leaving interrupts enabled, etc.).
  85.  
  86.     When you are done, please leave the disk in the following state:
  87.         dmacon dma bit ON
  88.         dsklen dma bit OFF (write a #DSKDMAOFF to dsklen)
  89.         adkcon disk bits -- any way you want
  90.         entena:disk sync and disk block interrupts -- Both DISABLED
  91.         CIA resource index interrupt -- DISABLED
  92.         8520 outputs -- doesn't matter, because all bits will be
  93.         set to inactive by the resource.
  94.         8520 data direction regs -- restore to original state.
  95.  
  96.    INPUTS
  97.     unitPtr - a pointer you your disk resource unit structure.
  98.         Note that the message filed of the structure MUST
  99.         be a valid message, ready to be replied to.
  100.  
  101.    RESULTS
  102.     lastDriver - if the disk is not busy, then the last unit
  103.         to use the disk is returned.  This may be used to
  104.         see if a driver needs to reset device registers.
  105.         (If you were the last user, then no one has changed
  106.         any of the registers.  If someone else has used it,
  107.         then any allowable changes may have been made).  If the
  108.         disk is busy, then a null is returned.
  109.  
  110.    EXCEPTIONS
  111.  
  112.    SEE ALSO
  113.  
  114.    BUGS
  115.  
  116.  
  117. disk.resource/GetUnitID                                 disk.resource/GetUnitID
  118.  
  119.    NAME
  120.        GetUnitID - find out what type of disk is out there
  121.  
  122.    SYNOPSIS
  123.        idtype = GetUnitID( unitNum ), DRResource
  124.     D0                D0         A6
  125.  
  126.    FUNCTION
  127.  
  128.    INPUTS
  129.  
  130.    RESULTS
  131.     idtype -- the type of the disk drive.  Standard types are
  132.         defined in the resource include file.
  133.  
  134.    EXCEPTIONS
  135.  
  136.    SEE ALSO
  137.  
  138.    BUGS
  139.  
  140.  
  141. disk.resource/GiveUnit                                   disk.resource/GiveUnit
  142.  
  143.    NAME
  144.        GiveUnit - Free the disk back up
  145.  
  146.    SYNOPSIS
  147.        GiveUnit(), DRResource
  148.                    A6
  149.  
  150.    FUNCTION
  151.     This routine frees the disk after a driver is done with it.
  152.     If others are waiting, it will notify them.
  153.  
  154.    INPUTS
  155.  
  156.    RESULTS
  157.  
  158.    EXCEPTIONS
  159.  
  160.    SEE ALSO
  161.  
  162.    BUGS
  163.  
  164.  
  165.